//
//  main.m
//  sat10.17_5.6.7.8.9
//
//  Created by dllo on 15/10/17.
//  Copyright (c) 2015年 dllo. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "ArrayOperation.h"
#import "Student.h"



int main(int argc, const char * argv[]) {

    
    // 将一个二维数组的行和列交换,存储到另外一个数组中去.
    
//    int arr[2][3] = {1, 2, 3, 4, 5, 6};
//    int b[3][2] = {0};
//    for (int i = 0; i < 3; i++) {
//        for (int j = 0; j < 2; j++) {
//            b[i][j] = arr[j][i];
//            printf("%d ", b[i][j]);
//        }
//        printf("\n");
//    }
    
    // 限时代码
    // 1.C基础
    
//    int a = 0;
//    float b = 0;
//    printf("请先后输入一个整数一个浮点数");
//    scanf("%d%f", &a, &b);          // scanf 不能加"\n"
//    float sum = a + b;
//    printf("%.2f\n", sum);
    
    // 2.分支结构
    
//    int a = 0;
//    printf("请输入一个100以内的整数");
//    scanf("%d", &a);
//    if (a % 7 != 0 && a / 10 != 7 && a % 10 != 7) {
//        printf("%d\n", a);
//        
//    }
//    else{
//        printf("过\n");
//    }
    
    // 3.循环结构
    
//    int max = 0;
//    for (int i = 0; i < 10; i++) {
//        int a = arc4random() % (40 - 20 + 1) + 20;
//        if (max < a) {
//            max = a;
//        }
//        printf("%d ", a);
//    }
//    printf("%d\n", max);
    
    // 4.一维数组
    
//    int a[10] = {0};
//    for (int i = 0; i < 10; i++) {
//        a[i] = arc4random() % (50 - 30 + 1) + 30;
//        printf("%d ", a[i]);
//    }
//    
//    printf("\n");
//    for (int i = 0; i < 10 - 1; i++) {
//        for (int j = 0; j < 10 - i - 1; j++) {
//            if (a[j] > a[j + 1]) {
//                int temp = a[j];
//                a[j] = a[j + 1];
//                a[j + 1] = temp;
//            }
//        }
//    }
//    for (int i = 0; i < 10; i++) {
//        printf("%d ", a[i]);
//    }
    
    // 5.多维数组
    
//    int max = 0;
//    int a [3][4] = {0};
//    for (int i = 0; i < 3; i++) {
//        for (int j = 0; j < 4; j++) {
//            a[i][j] = arc4random() % (40 - 20 + 1) + 20;
//            printf("%d ", a[i][j]);
//            max = max > a[i][j] ? max : a[i][j];
//        }
//        printf("\n");
//    }
//    for (int i = 0; i < 3; i++) {
//        for (int j = 0; j < 4; j++) {
//            if (a[i][j] == max) {
//                printf("%d ", a[i][j]);
//            }
//        }
//    }
    
    // 6.函数
    
//    int a[10] = {2, 5, 1, 7, 2, 8, 23, 89, 3, 5};
//    
//    printArray(a, 10);
//    printf("\n");
//    sortArray(a, 10);
    
    // 7.结构体
    
//    Student a = {"ZhangSan", 'm', 22, 99.9};
//    printStudent(a);
//    
//    Student b[5] = {
//        {"ZhangSan", 'm', 22, 99.9},
//        {"LiSi", 'n', 56, 88.8},
//        {"WangWu", 'n', 12, 33.3},
//        {"ZhaoLiu", 'm', 3, 66.6},
//        {"TianQi", 'm', 22, 55.5}
//    };
//    sortStudentsByNumber(b, 5);
    
    // 8.指针
    
//    int a[5] = {4, 23, 78, 1, 5};
//    printArr(a, 5);
//    printf("\n");
//    sortArr(a, 5);
    
    // 9.高级指针
    
    Student a = {"ZhangSan", 'm', 22, 99.9};
    printStu(&a);
    
        Student b[5] = {
            {"ZhangSan", 'm', 22, 99.9},
            {"LiSi", 'n', 56, 88.8},
            {"WangWu", 'n', 12, 33.3},
            {"ZhaoLiu", 'm', 3, 66.6},
            {"TianQi", 'm', 22, 55.5}
        };
    sortStuByNumber(b, 5);
    
    
    
    
    
    
    
    
    
    
    
    
    
    return 0;
}
